home *** CD-ROM | disk | FTP | other *** search
-
- // 2D - bit packed array: Instantiation and test driver
-
-
- #include "bitarray.hpp"
-
- const int xsize = 5;
- const int ysize = 5;
- const int num_bits = 4;
-
- main() {
- int i, j, tmp;
-
- Bit_2D_Array< xsize, ysize, num_bits > A;
- Bit_2D_Array< xsize, ysize, num_bits > B;
-
- A = 0;
- B = 0;
-
- A(0,0) = 0;
- A(1,0) = 1;
- A(1,2) = 2;
- A(3,0) = 3;
-
- B(0,0) = 0;
- B(1,0) = 1;
- B(1,2) = 2;
- B(3,0) = 11; // too large for 2 bits == 3, 4 bits is OK
-
- if ( A == B) {
- cout << " A == B" << endl;
- }
- else {
- cout << " A != B" << endl;
- };
-
- B = 0;
-
- for( i=0; i < xsize; i++) {
- B( i, i ) = 1;
- }
- for( i=0; i < xsize; i++) {
- B( i, ( ysize - 1) - i ) = 2;
- }
- for( i=0; i < xsize; i++) {
- B( i, ysize - 1 ) = 3;
- }
- for( i=0; i < xsize; i++) {
- B( xsize - 1, i ) = 4;
- }
-
- B.dump();
-
- // Transpose matrix to show that board() = board() is OK
- for( i=0; i<xsize; i++) {
- for( j=0; j<i; j++) {
- tmp = B(i,j);
- B(i,j) = B(j,i);
- B(j,i) = tmp;
- }
- };
- B.dump();
- }
-
-